在學習程式語言的過程中,應該都有聽過物件導向程式設計(Object-oriented programming,縮寫:OOP),在 Python 也有相似的用法。它是使用物件(Object)的概念去開發,能夠提高軟體的擴充性、維護性、跟重複使用率,在 Python 中要使用物件導向就需要熟悉關於類別(Class)及物件(Object)的相關知識。
相關的知識包含了五種,如下
在開始之前,先來看看程式碼吧!
# 人類類別
class human:
# 建構式
def __init__(self, name, height):
self.name = name # 名字屬性
self.height = height # 身高屬性
# 方法 Method
def say_hi(self):
print("Hello, I am", self.name, "and", self.height, "tall.")
# 物件
Taiwanese = human()
接下來會分別介紹各個部分。
可以想像是物件(Object)的組成條件,用來定義這個物件的屬性 Attribute 及方法 Method,像是一個台灣人它有名字還有身高(屬性 Attribute),並且他會可能會跟人打招呼(方法Method)。定義類別(Class)的語法如下
class classname:
statement
類別名稱習慣使用 Pascal 命名法。
每個單字字首大寫,不得使用空白或底線分隔單字
透過類別 Class 實際建立出來的東西,像是一個台灣人(Taiwanese)。建立物件的語法如下
object_name = classname()
範例
Taiwanese = human()
isinstace()
:用來判斷類別 Class 與物件 Object 的關係
# 人類類別
class human:
pass
# 動物類別
class animal:
pass
# 建立 human 類別的物件
Taiwanese = human()
print(isinstance(Taiwanese, human)) # True
print(isinstance(Taiwanese, animal)) # False
剩下的部份我們明天再來繼續介紹!
待續...